10 REM *** BANK ACCOUNTS *** . 11 REM *** BY JIM ABRONSKI *** . 12 REM *** UPDATED 10/24/87 *** . 14 POKE53280,0:POKE53281,0:PRINTCHR$(142) 15 PRINT"[147]":CLOSE4:OPEN15,8,15,"I0":GOTO260 20 CLR:OPEN15,8,15:CR$=CHR$(13):PO$=CHR$(16):QO$=CHR$(34) 25 DIMW$(5),N1$(19),N2$(9),M$(12),SL$(20),SP$(20),S2$(20),P4$(20) 30 DIMA1$(50),A2$(50),A3$(50),A4$(50),A5$(50),A6$(50),A7$(50),A8$(50) 31 DIMB1$(50),B2$(50),B3$(50),B4$(50),B5$(50),B6$(50),B7$(50),B8$(50) 32 DIMDA$(50),TN$(50),DE$(50),CM$(50),RM$(50),AM$(50),BA$(50),MK$(50) 33 DIMMDE$(20),MCM$(20),MRM$(20),PF$(20),LP$(20),LN$(20) 35 S7$=" ":CD$="[147]" 36 MT$="[147][154] B A N K A C C O U N T S " 55 SL$(1)=" CHECKING ACCOUNT #1 " 60 SL$(2)=" CHECKING ACCOUNT #2 " 65 SL$(3)=" SAVINGS ACCOUNT " 70 SL$(4)=" START A NEW ACCOUNT " 75 SL$(5)=" CHANGE PASSWORD " 80 SL$(6)=" ACCESS UTILITIES " 81 SL$(7)=" READ DOCUMENTATION " 83 SL$(8)=" EXIT TO BASIC ":AN=1:UP$="[145]":DN$="":C5$="":EI=0 85 C1$="":C2$="[154]":MN=8:C3$="[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145]":C4$="" 90 PRINTMT$;DN$:GOSUB3720 120 A=AN:ON A GOTO875,875,875,455,395,150,153,154 150 GOTO3702 153 GOTO3710 154 PRINT"[158] LEAVE QUICKLOAD WEDGE IN PLACE? (Y[158]/N[158])[145][145]" 155 GETAN$:IFAN$=""THEN155 156 IFAN$="N"THENSYS64738 157 IFAN$<>"Y"THEN155 158 PRINT"[147]**** [158]COMMODORE 64 BASIC V2 ****" 159 PRINT"[154]64K RAM SYSTEM 37895[154] BASIC BYTES FREE":NEW 160 LL=31:PRINT" >"; 165 OPEN9,0:AN$="":BN$="":POKE204,0 170 GET#9,BN$:IFBN$=""THEN170 175 IFBN$=CHR$(13)THENBN$="":CLOSE9:PRINT" ":POKE204,1:RETURN 180 IFBN$=""ORBN$="[157]"ORBN$="[145]"ORBN$=""THENGOTO170 185 IFBN$=""ORBN$="[147]"ORBN$=CHR$(34)THEN170 190 IFLEN(AN$)=LLTHENPRINT" ":PRINT"";LL;"LETTER LIMIT.":BN$=CHR$(13):GOTO175 195 IFAN$=""ANDBN$=CHR$(20)THEN170 200 IFBN$=CHR$(20)THENPRINT" [157][157] [157]";:AN$=LEFT$(AN$,LEN(AN$)-1):GOTO170 205 AN$=AN$+BN$:PRINTBN$;:GOTO170 210 P=0:OPEN4,4 220 PRINT#4:IFNOTPEEK(144)AND128THENCLOSE4:GOTO240 225 PRINT" ***[158] PLEASE TURN THE PRINTER ON ***":P=P+1 230 IFP>999THENCLOSE4:GOTO255 235 GOTO220 240 IFP>0THENPRINT" ***[158] THANK YOU ***":P=0:RETURN 245 RETURN 250 PRINT"[158] PRESS  RETURN [146][158] WHEN READY TO PRINT" 255 PRINT"[158] (PRESS 'A[158]' TO ABORT PRINTING)":P=0:RETURN 260 OPEN8,8,8,"MO.BILLS 3,S,R" 265 GOSUB2920 270 INPUT#8,PW$ 275 RS=ST:GOSUB2920:GOSUB2927 295 CLOSE8 305 IFGG=1THENRETURN 310 E=1:POKE808,234 312 PRINT"[147][154] B A N K A C C O U N T S " 314 PRINT"[158] PLEASE ENTER YOUR PASSWORD," 316 INPUT"[158] THEN PRESS  RETURN [146][144]";P$ 320 IFP$=PW$THENPOKE808,237:GOTO20 325 IF E=3THENE=1:GOTO340 330 PRINTTAB(10)" INVALID PASSWORD.":PRINTTAB(10)" TYPE CAREFULLY. " 335 E=E+1:FORT=1TO999:NEXTT:GOTO312 340 ME$="UNAUTHORIZED ENTRY ATTEMPT....ACCESS DENIED....LOADING DOCUMENTATION." 345 SP$=" " 350 ME$=SP$+SP$+ME$+" ":X9=1 355 CP$="" 360 FORXX=1TO50:NEXT 365 PRINT"";CP$;MID$(ME$,X9,38);CHR$(19) 370 X9=X9+1:IFX9>LEN(ME$)THENX9=1 375 IFX9=1ANDRE=0THENPOKE808,237:GOTO153 380 IFPEEK(203)=64THEN360 385 PRINTCP$;LEFT$(SP$+SP$,38);CHR$(19) 390 GOTO312 395 PRINT"[147][154]  C H A N G E P A S S W O R D " 400 GG=1:GOSUB260 405 PRINT"[158] CURRENT PASSWORD IS: ";PW$ 410 INPUT"[158] ENTER DESIRED PASSWORD:";PW$ 415 OPEN8,8,8,"@0:MO.BILLS 3,S,W" 420 GOSUB2920 425 PRINT#8,PW$ 430 GOSUB2920 435 CLOSE8 440 PRINT" YOUR NEW PASSWORD HAS BEEN RECORDED." 445 FOR T=1TO2000:NEXTT:GOTO20 455 OPEN8,8,8,"ACCT.INFO.,S,R" 460 GOSUB2920 465 INPUT#8,NA$(1),BN$(1),AC$(1) 470 INPUT#8,NA$(2),BN$(2),AC$(2) 475 INPUT#8,NA$(3),BN$(3),AC$(3) 480 RS=ST:GOSUB2920:GOSUB2927 500 CLOSE8 515 PRINT"[147][154]  START A NEW ACCOUNT " 520 PRINT"[158]STATUS OF CURRENT BANK ACCOUNTS:" 525 PRINT"(1) CHECKING ACCOUNT #1:" 530 PRINTTAB(7)""NA$(1) 535 IF NA$(1)="INACTIVE"THEN550 540 PRINTTAB(7)BN$(1) 545 PRINTTAB(7)"ACCT # "AC$(1) 550 PRINT"(2) CHECKING ACCOUNT #2:" 555 PRINTTAB(7)""NA$(2) 560 IF NA$(2)="INACTIVE"THEN575 565 PRINTTAB(7)BN$(2) 570 PRINTTAB(7)"ACCT # "AC$(2) 575 PRINT"(3) SAVINGS ACCOUNT" 580 PRINTTAB(7)""NA$(3) 585 IF NA$(3)="INACTIVE"THEN600 590 PRINTTAB(7)BN$(3) 595 PRINTTAB(7)"ACCT # "AC$(3) 600 PRINT"[158]WHICH ACCOUNT (1-3[158]) DO YOU WISH TO USE?" 605 PRINT"[158] (JUST  RETURN [146][158] TO RETURN TO MENU)[145]" 610 GOSUB3690 615 IFAN$=CHR$(13)THEN20 620 IFVAL(AN$)>3THEN610 625 A=VAL(AN$):IFAC$(A)="INACTIVE"THEN665 630 PRINT"[147][158]THAT ACCOUNT IS ALREADY IN USE." 635 PRINT"DO YOU WISH TO CHANGE THE ACCOUNT" 645 PRINT"INFORMATION FOR THIS ACCOUNT? (Y[158]/N[158])" 650 GOSUB3690 655 IFAN$="N"THEN515 660 IFAN$<>"Y"THEN650 665 IFA=3THEN680 670 PRINT"[147][154]  ACCT. INFO. CHECKING ACCOUNT #"A"[157] [146]" 675 GOTO690 680 PRINT"[147][154]  ACCT. INFO. SAVINGS ACCOUNT " 685 BL$=" " 690 PRINT"[158]IN WHAT NAME WILL THIS ACCOUNT BE IN?" 695 GOSUB160:SU$(1)=AN$ 700 PRINT"[158]WHAT'S THE FINANCIAL INSTITUTION'S NAME?" 705 GOSUB160:SU$(2)=AN$ 710 PRINT"[158]WHAT IS YOUR ACCOUNT NUMBER?" 715 GOSUB160:SU$(3)=AN$ 720 PRINT"[158]IS THE ABOVE INFORMATION CORRECT? (Y[158]/N[158])" 725 PRINT" (ENTER 'A[158]' TO ABORT)" 730 GOSUB3690 735 IF AN$="N"THEN665 740 IFAN$="A"THEN20 745 IFAN$<>"Y"THEN730 747 NA$(A)=SU$(1):BN$(A)=SU$(2):AC$(A)=SU$(3) 750 OPEN8,8,8,"@0:ACCT.INFO.,S,W" 755 GOSUB2920 760 FORX=1TO3 770 PRINT#8,QO$+NA$(X)+QO$;CR$;QO$+BN$(X)+QO$;CR$;QO$+AC$(X)+QO$ 785 NEXTX:GOSUB2920 790 CLOSE8 865 PRINT" *** [158]YOUR NEW ACCOUNT IS NOW OPEN ***" 870 FORT=1TO2000:NEXTT:GOTO20 875 PRINTCD$;" *** [158]LOADING ACCOUNT #";A;"***" 876 REG$="REGISTER"+STR$(A):GOSUB2950:IFQ=0THENGOSUB886 877 IFNA$(A)="INACTIVE"THEN665 880 TD$=DA$(Q):IFTD$=""THENTD$=" / / " 882 GOTO930 885 IFAI=1THENRETURN 886 PRINTCD$;" *** [158]LOADING ACCOUNT INFO. ***[145][145]" 887 OPEN8,8,8,"ACCT.INFO.,S,R" 890 GOSUB2920 895 FORX=1TO3 900 INPUT#8,NA$(X),BN$(X),AC$(X) 905 NEXTX:GOSUB2920 925 CLOSE8:AI=1:RETURN 930 PRINTMT$ 960 SL$(1)=" VIEW YOUR REGISTER " 965 SL$(2)=" MAKE A DEPOSIT " 970 SL$(3)=" MAKE A WITHDRAWAL " 975 SL$(4)=" YOUR MONTHLY BILLS " 980 SL$(5)=" MISCELLANEOUS CHECKS " 985 SL$(6)=" PRINTOUT REGISTER " 990 SL$(7)=" BALANCE YOUR ACCOUNT " 995 SL$(8)=" USE ARCHIVE FILER " 997 SL$(9)=" TRANSACTION EDITOR " 1000 SL$(10)=" LEAVE THIS ACCOUNT " 1003 S5$="" 1005 C3$="[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145]":C4$="":MN=10:AN=1:C5$="" 1010 IFA=3THEN:C3$="[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145]":C4$="":MN=8 1025 IFA=3THENFORX=4TO8:SL$(X)=SL$(X+2):NEXTX 1030 GOSUB3720 1032 IFA=3ANDAN>3THENAN=AN+2 1033 IFAN>5ORAN=1THEN1065 1034 IFAN=4THEN1065 1035 IFQ<48THEN1065 1040 PRINTCD$;"[145][145][145][158]THE REGISTER IS NOW AT MAXIMUM CAPACITY." 1045 PRINT"[154] BALANCE YOUR ACCOUNT [146][158] IF NECESSARY," 1050 PRINT"[158]THEN [154] USE ARCHIVE FILER [146][158] TO REDUCE" 1052 PRINT"[158]YOUR CURRENT REGISTER SIZE.":FORT=1TO6000:NEXTT:GOTO930 1065 ON AN GOTO2355,1180,1185,1360,1670,2535,2645,1825,3800,1100 1100 IFLA$<>"S"THEN1115 1105 PRINTCD$;" *** [158]SAVING REGISTER ***" 1110 REG$="REGISTER"+STR$(A):GOSUB3035 1115 IFSV<>1THEN20 1120 PRINTCD$;" *** [158]SAVING MONTHLY BILLS ***" 1125 GOSUB3165:GOTO20 1180 DW$="DEPOSIT":D1$="PAYCHECK":D2$="D":D3$=LD$:GOTO1190 1185 DW$="WITHDRAWAL":D1$="CASH":D2$="W":D3$=LW$ 1190 PRINT"[147][154]  MAKE A ";DW$;" " 1195 GOSUB2495:Q=Q+1 1200 PRINT"[158]ENTER DATE OF ";DW$;" (MO/DA/YR[158]):" 1210 PRINT"";TD$:INPUT"[145]";DA$(Q) 1220 TD$=DA$(Q):PRINT"[158]ENTER AMOUNT OF ";DW$":" 1225 INPUT"$[157][157]";AM$(Q):Z$=AM$(Q):GOSUB2455:AM$(Q)=Z$ 1230 PRINT"[158]ENTER MEMO FOR REGISTER IF DESIRED:" 1235 PRINT"";D1$:INPUT"[145]";RM$(Q) 1240 DE$(Q)=DW$:CM$(Q)=" ":TN$(Q)=D2$+RIGHT$(STR$(VAL(D3$)+1),3) 1245 MK$(Q)=" ":BA=VAL(BA$(Q-1)):AM=VAL(AM$(Q)):IFD2$="W"THEN1250 1246 BS=BA+AM:BA$(Q)=STR$(BS) 1247 D=LEN(TN$(Q)):D=D-1:LD$=RIGHT$(TN$(Q),D) 1248 GOTO1255 1250 BS=BA-AM:BA$(Q)=STR$(BS) 1252 W=LEN(TN$(Q)):W=W-1:LW$=RIGHT$(TN$(Q),W) 1255 Z$=BA$(Q):GOSUB2455:BA$(Q)=Z$ 1256 PRINT"YOUR ";DW$;" HAS BEEN RECORDED UNDER" 1260 PRINT"TRANSACTION # "TN$(Q) 1270 GOSUB1750:GOTO930 1360 IFMS=1THEN1400 1365 PRINTCD$;" ***[158] LOADING MONTHLY BILLS ***" 1366 BILLS$="MO.BILLS"+STR$(A):GOSUB3095:MS=1:GOTO1400 1370 PRINT"[147][154]  M O N T H L Y B I L L S " 1375 PRINT"[158]NAME OF BILL: DATE PAID:" 1380 FORX=1TOM 1390 PRINT" "MDE$(X) 1395 PRINTTAB(31)"[145]"PF$(X)"[157]":NEXTX 1397 PRINT"[158] ( ANY KEY[158] RETURNS TO MENU )" 1398 GETAN$:IFAN$=""THEN1398 1400 PRINT"[147][154]  M O N T H L Y B I L L S " 1401 SL$(1)=" PAY A MONTHLY BILL " 1402 SL$(2)=" VIEW MONTHLY BILLS " 1403 SL$(3)=" ADD A MONTHLY BILL " 1404 SL$(4)=" DELETE A MONTHLY BILL " 1405 SL$(5)=" PRINT BILLS SUMMARY " 1406 SL$(6)=" RETURN TO MAIN MENU " 1415 AN=1:MN=6:C3$="[145][145][145][145][145][145][145][145][145][145][145]":C4$="":C5$="":GOSUB3720 1435 ON AN GOTO4200,1370,1545,4200,4100,930 1470 IFAN=MNTHEN1400 1472 IFQ>47THEN1040 1475 B=AN:Q=Q+1:DE$(Q)=MDE$(B):CM$(Q)=MCM$(B):MK$(Q)=" ":RM$(Q)=MRM$(B) 1480 PRINT"[147][154] MONTHLY BILL TO PAY : " 1485 PRINT" "DE$(Q):PRINT" "CM$(Q):PRINT" "RM$(Q) 1490 PRINT"[158]ENTER DATE OF CHECK (MO/DA/YR[158]):" 1500 PRINT"";TD$:INPUT"[145]";DA$(Q):PF$(B)=DA$(Q):TD$=DA$(Q) 1505 IFLEFT$(RIGHT$(LP$(B),3),1)<>"."THENLP$(B)="" 1510 PRINT"[158]ENTER AMOUNT OF CHECK:":PRINT" ";LP$(B);"[145]" 1515 INPUT"$[157][157]";AM$(Q):Z$=AM$(Q):GOSUB2455:AM$(Q)=Z$:LP$(B)=AM$(Q) 1535 GOSUB1760:LN$(B)=TN$(Q):PF$(B)=DA$(Q):GOSUB1750 1540 SV=1:LA$="S":GOTO1400 1545 PRINT"[147] [154] ADD A MONTHLY BILL " 1546 IFM<18THEN1550 1547 PRINT"[150]MONTHLY BILLS FILE IS AT MAXIMUM SIZE." 1548 PRINT"YOU MUST NOW DELETE A BILL TO ADD ONE." 1549 FORT=1TO5000:NEXTT:GOTO1360 1550 PRINT"[158]PLEASE ENTER THE EXACT NAME TO WHICH" 1555 PRINT"CHECKS WILL BE WRITTEN:" 1560 GOSUB160:MDE$(M+1)=AN$ 1565 PRINT"[158]PLEASE ENTER THE MEMO TO BE RECORDED" 1570 PRINT"ON THE CHECKS (ACCOUNT #[158]):" 1575 GOSUB160:MCM$(M+1)=AN$ 1580 PRINT"[158]PLEASE ENTER THE MEMO TO BE RECORDED" 1585 PRINT"IN THE CHECKBOOK REGISTER:" 1590 GOSUB160:MRM$(M+1)=AN$ 1595 PF$(M+1)=" UNPAID ":LP$(M+1)="":LN$(M+1)="NONE" 1600 PRINT"[158]IS THE ABOVE INFORMATION CORRECT? (Y[158]/N[158])" 1605 GOSUB3690 1610 IFAN$="Y"THENM=M+1:MB$=STR$(M):SV=1:GOTO1400 1615 IFAN$<>"N"THEN1605 1620 GOTO1545 1625 IFAN=MNTHEN1400 1640 SV=1:DM=AN:IFDM=MTHEN1665 1645 FORX=1TOM-1 1650 IFX"N"THEN1780 1790 INPUT"[145]WHAT CHECK #[158] DO YOU WANT TO USE [157][157][157][157][157][157][157][157]";TN$(Q) 1792 IFTN$(Q)="MEMO"THEN1800 1795 LC$=TN$(Q) 1800 PRINT"[158]DO YOU WISH TO PRINT THIS CHECK? (Y[158]/N[158])" 1805 GOSUB3690 1810 IFAN$="Y"THENGOSUB3210:RETURN 1812 IFAN$<>"N"THEN1805 1815 RETURN 1825 PRINT"[147][154]  A R C H I V E F I L E R " 1830 SL$(1)=" SAVE A MONTH " 1835 SL$(2)=" LOAD A MONTH " 1840 SL$(3)=" RETURN TO MAIN MENU ":NF=0 1845 AN=1:MN=3:C3$="[145][145][145][145][145]":C4$="":C5$="":GOSUB3720 1870 ON AN GOTO1880,2145,930 1880 IFQ=0THENPRINT"THE REGISTER IS EMPTY.":FORT=1TO2000:NEXTT:GOTO930 1885 INPUT"[158]WHICH MONTH # (1-12[158]) TO SAVE";M$ 1890 IF LEN(M$)>2ORVAL(M$)>12THENPRINT"INVALID ENTRY.[145][145][145][145][145][145]":GOTO1885 1900 IFLEN(M$)=1THENM$="0"+M$ 1905 PRINT"CHECKING TRANSACTIONS...PLEASE WAIT." 1910 AR=1:FORX=1TOQ 1915 IFLEFT$(DA$(X),2)<>M$THEN1930 1920 AR=AR+1:IFMK$(X)<>"*"THEN1955 1930 NEXTX:IFAR<>1THEN1985 1935 PRINT"THERE ARE NO TRANSACTIONS FOR THAT" 1940 PRINT"MONTH IN THE CURRENT REGISTER." 1945 GOTO1965 1955 PRINT"ALL THE TRANSACTIONS IN MONTH ";M$ 1960 PRINT"HAVE NOT CLEARED YOUR BANK YET." 1965 PRINT"[158]DO YOU WISH TO SAVE ANOTHER MONTH? (Y[158]/N[158])" 1970 GOSUB3690:IFAN$="Y"THEN1885 1975 IFAN$="N"THEN930 1980 GOTO1970 1985 Y=1:Z=1:FORX=1TOQ 1990 IFLEFT$(DA$(X),2)<>M$THEN2010 1995 A1$(Y)=DA$(X):A2$(Y)=TN$(X):A3$(Y)=DE$(X):A4$(Y)=CM$(X) 2000 A5$(Y)=RM$(X):A6$(Y)=AM$(X):A7$(Y)=BA$(X):A8$(Y)=MK$(X):Y=Y+1 2005 GOTO2020 2010 B1$(Z)=DA$(X):B2$(Z)=TN$(X):B3$(Z)=DE$(X):B4$(Z)=CM$(X) 2015 B5$(Z)=RM$(X):B6$(Z)=AM$(X):B7$(Z)=BA$(X):B8$(Z)=MK$(X):Z=Z+1 2020 NEXTX 2025 M$=M$+RIGHT$(A1$(1),3):PRINT"[158]SAVING REGISTER FOR MONTH ";M$ 2050 REG$="ACCT."+STR$(A)+"-"+M$ 2055 OPEN8,8,8,"0:"+REG$+",S,W" 2060 NF=1:GOSUB2920:IFNF=1THEN2065 2062 CLOSE8:PRINT" FILE ALREADY EXISTS ":FORT=1TO2000:NEXTT:GOTO1825 2065 QTN$=STR$(Y-1) 2070 PRINT#8,QTN$ 2075 NF=0:GOSUB2920 2080 FORX=1TOY 2085 PRINT#8,A1$(X);CR$;A2$(X);CR$;QO$+A3$(X)+QO$;CR$;Q0$+A4$(X)+QO$ 2090 PRINT#8,QO$+A5$(X)+QO$;CR$;A6$(X);CR$;A7$(X);CR$;A8$(X) 2095 NEXTX:GOSUB2920 2100 CLOSE8 2105 PRINT"[158]YOUR ARCHIVE FILE HAS BEEN SAVED." 2115 PRINT"ADJUSTING REGISTER...PLEASE WAIT.[145][145]" 2120 Q=Z-1:FORX=1TOQ 2125 DA$(X)=B1$(X):TN$(X)=B2$(X):DE$(X)=B3$(X):CM$(X)=B4$(X) 2130 RM$(X)=B5$(X):AM$(X)=B6$(X):BA$(X)=B7$(X):MK$(X)=B8$(X) 2135 NEXTX 2140 REG$="REGISTER"+STR$(A):LA$="S":GOTO930 2145 INPUT"[158]LOAD WHICH REGISTER (MO/YR[158])";ML$ 2150 IFLEN(ML$)<>5THENPRINT"[145][145][145][145][145]":GOTO2145 2155 IFVAL(LEFT$(ML$,2))>12THEN2145 2160 IFAV=1THEN2170 2165 IFLA$="S"THENREG$="REGISTER"+STR$(A):GOSUB3035:LA$="" 2170 AV=0:REG$="ACCT."+STR$(A)+"-"+ML$ 2175 OPEN8,8,8,"0:"+REG$+",S,R" 2180 NF=1:GOSUB2920:IFNF=1THEN2190 2185 CLOSE8:PRINT" FILE NOT FOUND ":FORT=1TO2000:NEXTT:GOTO1825 2190 PRINT"LOADING REGISTER FOR ";ML$ 2195 INPUT#8,QTN$ 2200 NF=0:GOSUB2920 2205 Q=VAL(QTN$):FORX=1TOQ 2210 INPUT#8,DA$(X),TN$(X),DE$(X),CM$(X),RM$(X),AM$(X),BA$(X),MK$(X) 2215 RS=ST 2220 GOSUB2920:GOSUB2927 2235 NEXTX:CLOSE8 2240 FORX=1TOQ:Z$=AM$(X):GOSUB2455:AM$(X)=Z$ 2245 Z$=BA$(X):GOSUB2455:BA$(X)=Z$:NEXTX 2260 PRINT"[147][154]  A R C H I V E F I L E ";ML$;" " 2265 SL$(1)=" VIEW THE REGISTER " 2270 SL$(2)=" PRINT THE REGISTER " 2275 SL$(3)=" LOAD ANOTHER ARCHIVE MONTH " 2280 SL$(4)=" RETURN TO CURRENT REGISTER " 2285 SL$(5)=" LEAVE THIS ACCOUNT " 2290 AN=1:MN=5:C3$="[145][145][145][145][145][145][145][145][145]":C4$="":C5$="":GOSUB3720 2315 ON AN GOTO2355,2535,2325,2345,1100 2325 AV=1:PRINT"":GOTO2145 2345 REG$="REGISTER"+STR$(A):GOSUB2950:GOTO930 2355 PRINT"[147]":POKE53281,15:BA=VAL(BA$(1))-VAL(AM$(1)):BA$(0)=STR$(BA):X=0 2360 Z$=BA$(0):GOSUB2455:BA$(0)=Z$ 2365 LI$="[151] [195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]" 2370 IFX<0THENX=0 2375 PRINT"[147][144]CURSOR UP FOR PREV.PAGE[146] BAL.FWD[146]$";BA$(X);"[145]":X=X+1 2380 Y=X:FORX=YTOY+6 2385 IFX>QTHEN2425 2390 PRINT"[144]"TN$(X):PRINTTAB(5)"[145]"DE$(X):PRINTTAB(31)"[145]$";AM$(X);DA$(X) 2395 IFMK$(X)=""THENMK$(X)=" " 2400 PRINTTAB(9)"[145]"MK$(X)" "RM$(X):PRINTTAB(27)"[145]BAL:$";BA$(X);LI$ 2405 NEXTX:PRINT"[144]CURSOR DOWN FOR NEXT PAGE[145][145]" 2407 GOSUB3690 2410 IFAN$=CHR$(17)THENX=X-1:GOTO2375 2415 IFAN$=CHR$(145)THENX=Y-8:GOTO2370 2420 GOTO2407 2425 PRINT"[144] PRESS  RETURN [146][144] TO RETURN TO MENU." 2427 GOSUB3690 2430 IFAN$=CHR$(145)THENX=Y-8:GOTO2370 2435 IFAN$<>CHR$(13)THEN2427 2440 POKE53281,0 2445 IFREG$<>"REGISTER"+STR$(A)THEN2260 2450 GOTO930 2455 V$=RIGHT$(Z$,3):IFMID$(V$,2,1)="."THEN Z$=Z$+"0":GOTO2485 2465 IFLEFT$(V$,1)<>"."THENZ$=Z$+".00" 2467 IFRIGHT$(Z$,1)="."THENZ$=Z$+"00" 2470 FORZZ=1TOLEN(Z$) 2475 IFRIGHT$(LEFT$(Z$,ZZ),1)="."THENZ$=LEFT$(Z$,ZZ+2):GOTO2485 2480 NEXTZZ 2485 IFLEN(Z$)<8THENZ$=" "+Z$:GOTO2485 2487 IFLEN(Z$)>8THENZ$=RIGHT$(Z$,8) 2490 RETURN 2495 PRINT"[158]ENTER 'A[158]' NOW TO A[158]BORT THIS OPERATION," 2505 PRINT"OR PRESS ANY OTHER KEY TO CONTINUE." 2510 GOSUB3690 2515 IFAN$="A"THEN930 2520 BL$=" " 2525 PRINT"[145][145][145]";BL$:PRINTBL$:PRINTBL$:PRINT"[145][145][145][145][145]" 2530 LA$="S":RETURN 2535 IFQ=0THENPRINT"THE REGISTER IS EMPTY.":FORT=1TO2000:NEXTT:GOTO2570 2537 LI$="[195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]" 2545 GOSUB885:PRINT"[147][154]  P R I N T R E G I S T E R " 2550 GOSUB210:GOSUB250:GOSUB3690 2555 IFAN$="A"THEN2570 2560 IFAN$<>CHR$(13)THEN2550 2565 GOTO2580 2570 IFREG$<>"REGISTER"+STR$(A)THENRETURN 2575 GOTO930 2580 PRINT" ***[158] PRINTING REGISTER ***" 2585 OPEN4,4:PRINT#4,NA$(A):PRINT#4,BN$(A):PRINT#4,"ACCOUNT #";AC$(A) 2590 PRINT#4:PRINT#4:PRINT#4," T# DATE * TRANSACTION & MEMO "; 2595 PRINT#4," AMOUNT BALANCE":PRINT#4,LI$;LI$ 2605 FORX=1TOQ 2610 IFLEN(TN$(X))<4THENTN$(X)=" "+TN$(X):GOTO2610 2615 IFMK$(X)=""THENMK$(X)=" " 2620 PRINT#4,TN$(X);PO$;"07";DA$(X);" ";MK$(X);" ";DE$(X);PO$;"56";"$";AM$(X) 2625 PRINT#4,PO$;"19";RM$(X);PO$;"67";"$";BA$(X):PRINT#4,LI$;LI$ 2630 NEXTX:PRINT#4:CLOSE4:IFREG$="REGISTER"+STR$(A)THEN930 2635 GOTO2260 2645 IFQ=0THENPRINT"THE REGISTER IS EMPTY.":FORT=1TO2000:NEXTT:GOTO930 2646 PRINT"[147][154]  B A L A N C E A C C O U N T ":GOSUB2495 2650 PRINT"[158]DOES THE TRANSACTION SHOWN BELOW APPEAR" 2655 PRINT"ON THIS MONTH'S BANK STATEMENT? (Y[158]/N[158])" 2660 FORX=1TOQ 2665 IFMK$(X)="*"THEN2725 2670 IFLEFT$(TN$(X),1)="D"THENPT$="[158] DEPOSIT":GOTO2685 2675 IFLEFT$(TN$(X),1)="W"THENPT$="[158] WITHDRAWAL":GOTO2685 2680 PT$="[158]CHECK #" 2685 PRINT" ":FORT=1TO300:NEXTT 2690 IFPT$<>"[158]CHECK #"THEN2700 2695 PRINT"";PT$;TN$(X):GOTO2705 2700 PRINT"";PT$ 2705 PRINTTAB(12)"[145][158]ON ";DA$(X) 2710 PRINTTAB(26)"[145][158]FOR $";AM$(X) 2715 GOSUB3690:IFAN$="Y"THENMK$(X)="*":GOTO2725 2720 IFAN$<>"N"THEN2715 2725 NEXTX 2730 PRINT"[158]IS THERE A MONTHLY SERVICE CHARGE? (Y[158]/N[158])[145]" 2735 GOSUB3690 2740 IFAN$="N"THEN2790 2745 IFAN$<>"Y"THEN2735 2750 PRINT"[158]ENTER THE AMOUNT OF THE SERVICE CHARGE" 2755 PRINT"SHOWN ON THE BANK STATEMENT:":Q=Q+1 2760 INPUT"[158]AMOUNT: $[157][157]";AM$(Q):Z$=AM$(Q):GOSUB2455:AM$(Q)=Z$ 2770 TN$(Q)="S"+RIGHT$(STR$(VAL(LW$)+1),3):DA$(Q)=TD$ 2775 RM$(Q)="SERVICE CHARGE":DE$(Q)=RM$(Q):CM$(Q)=" ":MK$(Q)="*" 2780 BA=VAL(BA$(Q-1)):AM=VAL(AM$(Q)):BS=BA-AM:BA$(Q)=STR$(BS) 2785 W=LEN(TN$(Q)):W=W-1:LW$=RIGHT$(TN$(Q),W):Z$=BA$(Q):GOSUB2455:BA$(Q)=Z$ 2790 OT=VAL(BA$(Q)):FORX=1TOQ 2795 IFMK$(X)="*"THEN2810 2800 IFDE$(X)="DEPOSIT"THENOT=OT-VAL(AM$(X)):GOTO2810 2805 OT=OT+VAL(AM$(X)) 2810 NEXTX:Z$=STR$(OT):GOSUB2455 2815 PRINT"[158]THE ENDING BALANCE ON THIS MONTH'S" 2820 PRINT"BANK STATEMENT SHOULD BE $";Z$ 2825 PRINT"[158]IF THIS AGREES WITH THE STATEMENT," 2830 PRINT"THEN PRESS  RETURN [146][158]" 2835 PRINT"IF NOT, PRESS 'A[158]' TO A[158]DJUST BALANCE.[145][145]" 2840 GOSUB3690:IFAN$=CHR$(13)THEN930 2845 IFAN$<>"A"THEN2840 2850 PRINT"WHAT IS THE ENDING BALANCE SHOWN " 2855 INPUT"ON THE BANK STATEMENT $[157][157]";BZ$ 2870 Q=Q+1:AJ=VAL(BZ$)-VAL(Z$):Z$=STR$(AJ):GOSUB2455:AM$(Q)=Z$ 2880 Z$=STR$(VAL(BA$(Q-1))+VAL(AM$(Q))):GOSUB2455:BA$(Q)=Z$ 2890 DE$(Q)="BAL. ADJUSTMENT":DA$(Q)=TD$:TN$(Q)="---":MK$(Q)="*":CM$(Q)="-" 2895 RM$(Q)="PER STATEMENT" 2900 PRINTCD$;"[158][145][145]YOUR BALANCE HAS BEEN ADJUSTED BY THE" 2905 PRINT"AMOUNT OF $";AM$(Q);"[158] TO AGREE WITH" 2910 PRINT"THIS MONTH'S BANK STATEMENT." 2915 FORT=1TO3000:NEXTT:GOTO930 2920 INPUT#15,EN,EM$,ET,ES 2922 IF EN=0 THEN RETURN 2923 IFNF=1THENNF=0:RETURN 2924 PRINTCD$;" ERROR ON DISK " 2925 PRINTEN,EM$,ET,ES 2926 CLOSE8:FORT=1TO11111:NEXTT:RUN20 2927 IF RS=64 THENRETURN 2928 IF RS<>0 THEN2930 2929 RETURN 2930 PRINTCD$;"BAD DISK STATUS IS "RS 2931 CLOSE8:FORT=1TO11111:NEXTT:RUN20 2950 OPEN8,8,8,"0:"+REG$+",S,R" 2960 GOSUB2920:IFED=1THEN90 2965 INPUT#8,QTN$,LD$,LW$,LC$ 2970 GOSUB2920 2975 Q=VAL(QTN$):IFQ=0THENCLOSE8:RETURN 2980 FORX=1TOQ 2985 INPUT#8,DA$(X),TN$(X),DE$(X),CM$(X),RM$(X),AM$(X),BA$(X),MK$(X) 2990 RS=ST:GOSUB2920:GOSUB2927 3010 Z$=AM$(X):GOSUB2455:AM$(X)=Z$ 3015 Z$=BA$(X):GOSUB2455:BA$(X)=Z$ 3020 NEXTX:CLOSE8:RETURN 3035 OPEN8,8,8,"@0:"+REG$+",S,W" 3045 GOSUB2920 3050 QTN$=STR$(Q) 3055 PRINT#8,QTN$;CR$;LD$;CR$;LW$;CR$;LC$ 3065 FORX=1TOQ 3070 PRINT#8,DA$(X);CR$;TN$(X);CR$;QO$+DE$(X)+QO$;CR$;QO$+CM$(X)+QO$ 3075 PRINT#8,QO$+RM$(X)+QO$;CR$;AM$(X);CR$;BA$(X);CR$;MK$(X) 3080 GOSUB2920 3085 NEXTX:CLOSE8:RETURN 3095 IFMS=1THENRETURN 3100 OPEN8,8,8,"0:"+BILL$+",S,R" 3105 GOSUB2920 3110 INPUT#8,MB$ 3115 GOSUB2920 3120 M=VAL(MB$):IFM=0THENCLOSE8:RETURN 3122 FORX=1TOM 3125 INPUT#8,MDE$(X),MCM$(X),MRM$(X),PF$(X),LP$(X),LN$(X) 3130 RS=ST:GOSUB2920:GOSUB2927 3135 NEXTX:CLOSE8:FORX=1TOM 3140 IFLEFT$(RIGHT$(LP$(X),3),1)<>"."THEN3150 3145 Z$=LP$(X):GOSUB2455:LP$(X)=Z$ 3150 NEXTX:RETURN 3165 OPEN8,8,8,"@0:"+BILL$+",S,W" 3170 GOSUB2920 3175 PRINT#8,MB$ 3180 GOSUB2920 3185 FORX=1TOM 3190 PRINT#8,QO$+MDE$(X)+QO$;CR$;QO$+MCM$(X)+QO$;CR$;QO$+MRM$(X)+QO$;CR$;PF$(X) 3195 PRINT#8,LP$(X);CR$;LN$(X) 3200 GOSUB2920:NEXTX:CLOSE8:RETURN 3210 PRINT"[147][154]  READY TO PRINT CHECK # ";TN$(Q);" " 3215 GOSUB210:AD$(1)="":AD$(2)="" 3220 IFZ%=0THENGOSUB3230:Z%=1:GOTO3285 3225 GOTO3285 3230 FOR I=1TO19:READ N1$(I):NEXT 3235 FOR I=2TO9:READ N2$(I):NEXT 3240 FOR I=1TO12:READ M$(I):NEXT:RETURN 3245 : 3250 DATA ONE,TWO,THREE,FOUR,FIVE,SIX,SEVEN,EIGHT,NINE,TEN,ELEVEN,TWELVE 3255 DATA THIRTEEN,FOURTEEN,FIFTEEN,SIXTEEN,SEVENTEEN,EIGHTEEN,NINETEEN 3260 : 3265 DATA TWENTY,THIRTY,FORTY,FIFTY,SIXTY,SEVENTY,EIGHTY,NINETY 3270 : 3275 DATA JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST,SEPTEMBER,OCTOBER 3280 DATA NOVEMBER,DECEMBER 3285 GOSUB3465:IFAS$="*** AND ***"THENS4=41-LEN(AT$):GOTO3310 3290 S1=LEN(AS$)/2:S2=LEN(AT$)/2 3295 IFS1>S2THEN3305 3300 S3=S2-S1:FORX=1TOS3:AS$=" "+AS$:NEXTX:S4=41-LEN(AS$):GOTO3310 3305 S3=S1-S2:FORX=1TOS3:AT$=" "+AT$:NEXTX:S4=41-LEN(AS$) 3310 SP$="":FORX=1TOS4:SP$=SP$+" ":NEXTX 3320 MM=VAL(LEFT$(DA$(Q),2)):IFMM>11THENMM=12 3321 IFMM<1THENMM=1 3325 D$=MID$(DA$(Q),4,2) 3330 YR$="19"+RIGHT$(DA$(Q),2) 3335 DT$=M$(MM)+" "+D$+","+YR$ 3340 GOTO3610 3350 OPEN4,4:FORX=1TO3:PRINT#4:NEXTX 3355 PRINT#4,TAB(37);DT$ 3360 IFAS$<>"*** AND ***"THEN3370 3365 PRINT#4:PRINT#4,TAB(5);AT$;SP$;AM$(Q):PRINT#4:GOTO3380 3370 PRINT#4:PRINT#4,TAB(5);AS$;SP$;AM$(Q) 3375 PRINT#4,TAB(5);AT$ 3380 PRINT#4:PRINT#4,TAB(9);DE$(Q) 3385 PRINT#4,TAB(9);AD$(1):PRINT#4,TAB(9);AD$(2) 3390 PRINT#4,TAB(9);CM$(Q) 3395 FORX=1TO4:PRINT#4:NEXTX:CLOSE4:PRINT"":RETURN 3400 RETURN 3405 PRINT"[158] BE SURE THE **[158] WERE PRINTED AT THE" 3410 PRINT" UPPER LEFT CORNER OF CHECK # ";TN$(Q) 3415 PRINT"[158] MAKE ADJUSTMENTS IF NECESSARY," 3425 PRINT"[158] PRESS ANY KEY TO CONTINUE.[145]" 3430 CLOSE3:OPEN3,4 3435 PRINT#3,"**";PO$;"50"; 3440 PRINT#3," ":CLOSE3 3445 GOSUB3690:RETURN 3465 FOR J=1TO5:W$(J)="":NEXTJ 3470 CE$=RIGHT$(AM$(Q),2):CA$=LEFT$(AM$(Q),5) 3475 IFLEFT$(CA$,1)=" "THENCA$=RIGHT$(CA$,4) 3480 IFLEFT$(CA$,1)=" "THENCA$=RIGHT$(CA$,3) 3485 IFLEFT$(CA$,1)=" "THENCA$=RIGHT$(CA$,2) 3490 IFLEFT$(CA$,1)=" "THENCA$=RIGHT$(CA$,1) 3495 L1=LEN(CA$):U=1:ON L1 GOTO3530,3525,3510,3500 3500 T=VAL(MID$(CA$,U,1)) 3505 W$(1)=N1$(T)+" THOUSAND ":U=U+1 3510 T=VAL(MID$(CA$,U,1)):IF T=0 THEN3520 3515 W$(2)=N1$(T)+" HUNDRED " 3520 U=U+1 3525 T1=VAL(MID$(CA$,U,1)):U=U+1 3530 T2=VAL(MID$(CA$,U,1)) 3535 IF T1=0 THEN3550 3540 IF T1=1 THEN T3=10+T2:W$(5)=N1$(T3):GOTO3565 3545 W$(3)=N2$(T1) 3550 IF T2=0 THEN W$(5)=W$(3):GOTO3565 3555 W$(4)=N1$(T2):IF T1=0 THEN W$(5)=W$(4):GOTO3565 3560 W$(5)=W$(3)+"-"+W$(4) 3565 AS$="*** "+W$(1)+W$(2)+"AND ***":SG$=" & ":IFW$(5)=""THENSG$="" 3570 AT$="*** "+W$(5)+SG$+CE$+"/100 DOLLARS ***" 3575 T=0:T1=0:T2=0 3580 RETURN 3585 PRINT"[158]ENTER 1ST LINE OF 2 LINE ADDRESS:" 3590 GOSUB160:AD$(1)=AN$ 3595 PRINT"[158]ENTER 2ND LINE OF ADDRESS:" 3600 GOSUB160:AD$(2)=AN$ 3605 RETURN 3610 PRINT"[147][154]  READY TO PRINT CHECK # ";TN$(Q);" " 3615 SL$(1)=" PRINT CHECK " 3620 SL$(2)=" ENTER ADDRESS FOR CHECK " 3625 SL$(3)=" PRINT ASTRISKS FOR ALIGNMENT " 3630 SL$(4)=" ABORT PRINTING " 3635 AN=1:MN=4:C3$="[145][145][145][145][145][145][145]":C4$="":C5$="":GOSUB3720 3665 IFAN=1THENGOTO3350 3670 IFAN=2THENGOSUB3585:GOTO3610 3675 IFAN=3THENGOSUB3405:GOTO3610 3680 IFAN=4THENRETURN 3690 GETAN$:IFAN$=""THEN3690 3695 RETURN 3702 CLOSE8:CLOSE15:POKE198,4 3703 PRINT"[147][144]LOAD"CHR$(34)"B.A. UTIL."; 3704 PRINT CHR$(34)",8"; 3705 POKE631,13:POKE632,82:POKE633,117:POKE634,13 3706 END 3710 CLOSE8:CLOSE15:POKE198,1 3711 PRINT"[147][144]LOAD"CHR$(34)"B.A. INFO."; 3712 PRINT CHR$(34)",8,1"; 3713 POKE631,13 3714 END 3720 PRINT"[158] CHOOSE WITH CURSOR KEYS:" 3725 FORX=1TOMN:PRINTDN$;S7$;C1$;SL$(X):NEXTX 3730 PRINT"[158] PRESS  RETURN [146][158] TO ENTER SELECTION.[145]" 3735 PRINT"";C5$;S7$;C2$;SL$(1) 3740 GETAN$:IFAN$=""THEN3740 3745 IFAN$=CHR$(13)THENAN$=STR$(AN):RETURN 3750 IFAN$=CHR$(145)THEN3760 3755 IFAN$=CHR$(17)THEN3780 3757 GOTO3740 3760 LN=AN:AN=AN-1:IFAN=0THENAN=MN 3765 PRINT"[145]";S7$;C1$;SL$(LN) 3770 IFLN=1THENPRINTC4$;S7$;C2$;SL$(AN):GOTO3740 3775 PRINTUP$;"[145][145]";S7$;C2$;SL$(AN):GOTO3740 3780 LN=AN:AN=AN+1:IFAN=MN+1THENAN=1 3785 PRINT"[145]";S7$;C1$;SL$(LN) 3790 IFLN=MNTHENPRINTC3$;S7$;C2$;SL$(AN):GOTO3740 3795 PRINTDN$;" ";C2$;SL$(AN):GOTO3740 3800 IFQ=0THENPRINT"THE REGISTER IS EMPTY.":FORT=1TO2000:NEXTT:GOTO930 3801 H=0:FORL=1TOQ:IFMK$(L)<>"*"THENH=1 3802 NEXTL:IFH=1THENX=1:GOTO3805 3803 PRINT"ALL TRANSACTIONS HAVE CLEARED THE BANK." 3804 FORT=1TO2000:NEXTT:GOTO930 3805 PRINT"[147][154] T R A N S A C T I O N E D I T O R " 3807 PRINT"[158] CHOOSE WITH CURSOR KEYS:":V=1 3810 IFX=Q+1THENX=1 3811 IFX=0THENX=Q 3813 PRINT"[155] " 3814 PRINT"[145] [146][157][157][145][145]" 3815 PRINT"[155]"TN$(X):PRINTTAB(5)"[145][145]"DE$(X):PRINTTAB(31)"[145][145]$";AM$(X);DA$(X) 3820 IFMK$(X)=""THENMK$(X)=" " 3825 PRINTTAB(9)"[145]"MK$(X)" "RM$(X):PRINTTAB(27)"[145]BAL:$";BA$(X) 3830 PRINT"[158] PRESS  RETURN [146][158] TO ENTER SELECTION." 3835 GETAN$:IFAN$=""THEN3835 3840 IFAN$=CHR$(13)THEN3865 3845 IFAN$=CHR$(145)THENX=X-1:V=-1:GOTO3860 3850 IFAN$=CHR$(17)THENX=X+1:V=1:GOTO3860 3855 GOTO3835 3860 PRINT"":GOTO3810 3865 SL$(1)=" SELECT ANOTHER TRANSACTION " 3866 SL$(2)=" CHANGE TRANSACTION NAME " 3867 SL$(3)=" CHANGE TRANSACTION MEMO " 3868 SL$(4)=" EDIT TRANSACTION DATE " 3869 SL$(5)=" EDIT TRANSACTION AMOUNT " 3870 SL$(6)=" DELETE THIS TRANSACTION " 3871 SL$(7)=" RETURN TO MAIN MENU " 3875 AN=1:MN=7:C3$="[145][145][145][145][145][145][145][145][145][145][145][145][145]":C4$="":C5$="":F=X 3877 PRINT" [145][145]":GOSUB3725:X=F 3880 PRINT"" 3885 ON AN GOTO3805,3890,3890,3940,3940,4000,930 3890 PRINT" [158]ENTER NEW LINE, THEN PRESS  RETURN ":GOSUB160 3894 IFAN=2THENDE$(X)=AN$:GOTO3998 3897 IFAN=3THENRM$(X)=AN$:GOTO3998 3900 OO=0:IFMS<>1THENRETURN 3905 FORO=1TOM:IFLN$(O)<>TN$(X)THEN3915 3910 OO=O:O=M 3915 NEXTO:RETURN 3940 ET$=DA$(X):IFAN=5THENET$=AM$(X) 3945 PRINT" [158]EDIT DATA, THEN PRESS  RETURN [146] " 3950 PRINT" "ET$ 3955 INPUT"[145]";ET$ 3960 IFAN=5THEN3975 3965 IFET$=DA$(X)THEN3805 3967 GOSUB3900:IFOO<>0THENPF$(OO)=ET$:SV=1 3970 DA$(X)=ET$:GOTO3998 3975 IFET$=AM$(X)THEN3805 3982 ZI$=ET$:PRINT"[145]ADJUSTING BALANCES....PLEASE WAIT.[145]" 3983 ZI=VAL(ZI$)-VAL(AM$(X)) 3984 IFLEFT$(TN$(X),1)="D"THEN3990 3985 IFVAL(ZI$)>VAL(AM$(X))THEN3993 3986 IFVAL(ZI$)VAL(AM$(X))THEN3994 3991 IFVAL(ZI$)0THENLP$(OO)=Z$:SV=1 3997 PRINT"[145][145]":GOSUB1750 3998 LA$="S":GOTO3805 4000 PRINT" [158]PROCEED WITH DELETION? (Y[158]/N[158]) " 4005 GOSUB3690:IFAN$="N"THEN3805 4010 IFAN$<>"Y"THEN4005 4012 PRINT"ADJUSTING TRANSACTIONS...PLEASE WAIT." 4015 IFLEFT$(TN$(X),1)="D"THEN4027 4017 FORF=X+1TOQ 4020 ZB=VAL(AM$(X)):ZC=VAL(BA$(F)):Z$=STR$(ZB+ZC):GOSUB2455:BA$(F)=Z$:NEXTF 4025 GOTO4035 4027 FORF=X+1TOQ 4030 ZB=VAL(AM$(X)):ZC=VAL(BA$(F)):Z$=STR$(ZC-ZB):GOSUB2455:BA$(F)=Z$:NEXTF 4035 FORF=XTOQ-1 4040 DA$(F)=DA$(F+1):TN$(F)=TN$(F+1):DE$(F)=DE$(F+1):CM$(F)=CM$(F+1) 4045 RM$(F)=RM$(F+1):AM$(F)=AM$(F+1):BA$(F)=BA$(F+1):MK$(F)=MK$(F+1) 4050 NEXTF:DA$(Q)="":TN$(Q)="":DE$(Q)="":CM$(Q)="":RM$(Q)="":AM$(Q)="" 4055 BA$(Q)="":MK$(Q)="":Q=Q-1 4056 PRINT"[145][145]":GOSUB1750 4060 LA$="S":GOTO3805 4100 IFQ=0THENPRINT"THE REGISTER IS EMPTY.":FORT=1TO2000:NEXTT:GOTO1400 4101 GOSUB885:PRINT"[147][154]  PRINT MONTHLY BILLS SUMMARY " 4105 GOSUB210:GOSUB250 4107 LI$="[195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]" 4110 GETAN$:IFAN$=""THEN4110 4115 IFAN$="A"THEN1400 4120 IFAN$<>CHR$(13)THEN4110 4121 PRINT" *** [158]PRINTING SUMMARY ***":OPEN4,4 4128 TP=0:Z$="":FORX=1TOM:IFLP$(X)=" UNPAID "THEN4130 4129 TP=TP+VAL(LP$(X)) 4130 NEXTX:Z$=STR$(TP):GOSUB2455 4135 PRINT#4," ";NA$(A):PRINT#4," ";BN$(A):PRINT#4," ACCOUNT #";AC$(A) 4140 PRINT#4:PRINT#4:PRINT#4,LI$;LI$:PRINT#4 4145 PRINT#4," M O N T H L Y B I L L S S U M M A R Y - ";TD$ 4150 PRINT#4:PRINT#4,LI$;LI$:PRINT#4 4155 FORX=1TOM 4160 PRINT#4," ";MDE$(X);PO$;"33";MRM$(X);PO$;"56";"AMOUNT PAID: $";LP$(X) 4170 PRINT#4," ";MCM$(X);PO$;"33";"DATE PAID: "PF$(X);PO$;"56";"CHECK #";LN$(X) 4175 PRINT#4:NEXTX 4185 PRINT#4:PRINT#4,LI$;LI$ 4190 PRINT#4," T O T A L A M O U N T P A I D : $";Z$ 4195 PRINT#4,LI$;LI$:PRINT#4:CLOSE4:GOTO1400 4200 PRINT"[147] [154] M O N T H L Y B I L L S " 4202 PRINT"[158] CHOOSE WITH CURSOR KEYS:" 4205 N=AN:FORX=1TOM:SL$(X)=" "+MDE$(X)+" ":NEXTX:SL$(M+1)=" RETURN TO MENU " 4215 AN=1:MN=M+1:C5$="" 4216 C3$="":FORX=1TOMN:C3$=C3$+"[145]":NEXTX 4217 C4$="":FORX=1TOMN-2:C4$=C4$+"":NEXTX 4235 UP$="":DN$="":GOSUB3725:UP$="[145]":DN$="" 4240 IFN=1THEN1470 4245 IFN=4THEN1625